草庐IT

c++ - Eclipse C++ dll导入

全部标签

windows - 什么可能会阻止从 system32 加载 dll?

我有一个应用程序,它从system32读取一些dll,这些dll在安装应用程序时就放在那里。在某些机器上,应用程序运行良好,但在其他机器上它永远不会启动(因为无法加载dll)。什么可能会阻止应用程序从system32读取dll(例如,弄乱PATH变量等)?可以通过将dll放在exe文件旁边来解决,但最好理解为什么某些机器(仅安装在Windows7机器上)可以启动应用程序而其他机器不能。 最佳答案 例如64位版本的Windows。32位DLL应该放在c:\windows\syswow64中。不建议将操作系统文件夹用于您自己的DLL。

c++ - Shell Extension DLL - 如果用户在文件夹空白区域内单击,如何捕获文件夹路径?

使用shell扩展dll,如果用户在文件夹空白区域内单击,如何捕获文件夹路径? 最佳答案 如果你正在实现一个shell扩展dll,那么你会在你的IShellExtInit::Initialize(中得到路径)方法作为pidlFolder参数。为确保您的扩展也注册了文件夹背景,您还必须在HKCR\Directory\Background\shellex\ContextMenuHandlers下创建适当的条目 关于c++-ShellExtensionDLL-如果用户在文件夹空白区域内单击,如

c - 反编译一个c dll以使用pinvoke

你能反编译一个cdll来使用pinvoke或者使用反射器吗?如何获取方法名称和签名? 最佳答案 简单地说,没有简单的方法可以做你想做的事。您可以使用反汇编程序库,例如distorm不过,要反汇编导出入口点周围的代码。有一些启发式方法可以使用,但其中许多仅适用于32位调用约定(__stdcall和__cdecl),尤其是。我个人觉得它的Python绑定(bind)很有用,但是libdasm可以做同样的事情。任何其他具有反汇编功能的工具都会有很大的值(value),例如OllyDbg或ImmunityDebugger。注意:如果您有一个

windows - 检查 Windows API 级别的 DLL

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭4年前。Improvethisquestion有没有一种工具可以根据特定的API级别检查DLL?我们遇到了来自外部开发人员的DLL的问题,该DLL在Windows2000下无法运行,现在我们正在尝试查找Win2k中不存在的所有WindowsAPI调用。有这样的东西吗?

python - 无法将 Pandas 导入 IPython

我正在运行Windows7.0,与Python2.7.我在安装之前安装了pandasipython0.12.1(稳定的)。当我运行importpandas在IPython.exe我收到错误消息:Nomodulenamedpandas如果我从开始菜单调用IPython,通过cmd它不会在C:\Python27中自动运行pandas所在的位置。相反,它以不同的路径运行C:\Users\mycomputername\\.ipython.(ipython无法检测到机器上存在pandas库,这似乎是不合理的)。也就是说,我也cd到C:\Python27\dist\ipython-0.12要运行的

c++ - 如何在不同的目标平台上以编程方式巧妙地注册 32 位 COM/DLL 组件?

我曾使用以下函数在32位Windows平台(如WindowXP和Windows7)上注册我的32位COM/DLL组件。它工作正常。但是在64位Windows7上运行时,该函数无法注册成功。结果符合预期!intRegisterComponent(LPCTSTRlpszDllName){//LoadthelibraryHINSTANCEhLib=LoadLibrary(lpszDllName);if(hLib==NULL){return-2;}typedefHRESULT(CALLBACK*HCRET)(void);HCRETlpfnDllRegisterServer;//Findthee

c++ - 奇怪的 Unresolved external 编译 DLL

我正在尝试按照本网站上的说明进行操作:http://support.microsoft.com/kb/q168958代码如下:#include#includenamespaceTest{templateclassTestBuffer{private:TYPE*m_pData;size_tm_uSize;public:TestBuffer(size_tuSize):m_pData(NULL),m_uSize(0){m_pData=(TYPE*)malloc(uSize*sizeof(TYPE));}~TestBuffer(){if(NULL!=m_pData)free(m_pData);

windows - 在PE的导入表中添加一个条目

我正在寻找一个命令行程序来向PE文件的导入表添加一个条目。我的目标是从外部DLL添加一个新的导入函数到我的EXE,然后使用ollydbg使用代码洞穴插入新代码。新代码将使用新导入的函数。实际上我已经实现了我的目标,但是为了向我使用的导入表添加一个新条目Stud_PE,这是一个GUI应用程序,我想自动化这部分过程。我会考虑以编程方式解决方案,但我担心PE结构太复杂,我无法在我的时间范围内学习和探索。此外,如果一个实现已经存在,那么不使用它是一种耻辱。:-) 最佳答案 找到了正在寻找的东西。m-PEFileforc++:http://f

c++ - 如何知道从哪个DLL加载的方法

在两个DLLA.dll和B.dll中定义了一个公共(public)方法foo()。现在,当进程proc.exe加载两个DLL并从两个线程同时调用foo()方法时。有什么方法可以知道foo()在运行时是从哪个DLLA.dll或B.dll加载的。我需要此信息用于记录目的。我在互联网上找不到任何相关内容。GetModuleFileName()将返回进程名称proc.exe而不是Dll名称。 最佳答案 假设您有函数的地址,您应该能够使用以下内容来确定模块的基址。HMODULEModuleFromAddress(void*address){M

python - 无法在 Windows 7 上导入 ctypes

尝试导入ctypes时出现此错误的任何想法:>>>fromctypesimport*Traceback(mostrecentcalllast):File"",line1,infromctypesimport*File"C:/Python27\ctypes.py",line3,inlibc=ctypes.windll.msvcrtAttributeError:'module'objecthasnoattribute'windll' 最佳答案 "C:/Python27\ctypes.py"表示您在加载的路径中有一些杂散的ctypes.p